/*
*	create by  jack ,20210705
*
*	描述 ：
*		  该文件提供了一套设备调用的接口，屏蔽具体实现细节,以达到应用程序可以在不同的平台上联合调试。
*		  open 返回该设备枚举类别。无设备实现时，返回负数.
*   修改记录：[内容][作者][时间]
*
*/


#ifndef _SANJI_OS_UART_H_
#define _SANJI_OS_UART_H_

#include "define_comm.h"
#include "device.h"

#include "rcc_apb_periph.h"
#include "gpio.h"

#ifdef __cplusplus
extern "C"{
#endif
#define UART_BUFFER_CACHE_SIZE 256

struct uart_gpio
{
    struct gpio_pin tx;
    struct gpio_pin rx;
};

struct uart_device_data
{
    struct rcc_apb_periph  *uart_apb;
    struct uart_gpio *gpio;
    struct peripheral_nvic nvic;
    struct peripheral_usart param;    
};


#ifdef __cplusplus
}
#endif
#endif
